#define LED_PIN D2 #define BUTTON_PIN D8 int brightness = 0; int stepSize = 64; bool lastButtonState = HIGH; void setup() { pinMode(LED_PIN, OUTPUT); pinMode(BUTTON_PIN, INPUT_PULLUP); } void loop() { bool currentButtonState = digitalRead(BUTTON_PIN); if (lastButtonState == HIGH && currentButtonState == LOW) { brightness += stepSize; if (brightness > 255) { brightness = 0; } analogWrite(LED_PIN, brightness); delay(50); // debounce } lastButtonState = currentButtonState; }